For achieving long distance optical signal transmission, at moderate spectral efficiencies, dual polarization Binary Phase Shift Keying (DP-BPSK) and coherent detection are commonly used. As is known in the art, BPSK encodes a single bit value (“0” or “1”) onto an optical carrier by modulating the carrier phase between two constellation points that are separated by 180°. DP-BPSK achieves a spectral efficiency of 2-bits per symbol period (baud), by independently modulating single bit values onto each of the orthogonal polarization modes of the optical carrier. This is illustrated in FIG. 1, which shows the BPSK constellation mapped onto the Real (Re)-Imaginary (Im) plane of each of the X- and Y-polarizations.
As is known in the art, other modulation schemes enable increased spectral efficiency by encoding increased numbers of bits per baud. For example, Quadrature Phase Shift Keying (QPSK) enables two bits to be encoded on each polarization, and thus four bits per baud for dual polarization QPSK (DP-QPSK), by using a symmetrical 4-point constellation, as may be seen in FIG. 2. Other modulation schemes, such as Quadrature Amplitude Modulation (QAM) achieve even higher numbers of bits per baud by modulating both the phase and amplitude of the optical field. However, as the number of encoded bits-per-baud increases, the Euclidian distance between neighbouring constellation points decreases. For example, in the BPSK constellations shown in FIG. 1, each constellation point is separated from its neighbour by an angle corresponding to 180° in the Re-Im plane. On the other hand, in the QPSK constellations shown in FIG. 2, each constellation point is separated from its neighbour by an angle corresponding to 90° in the Re-Im plane. The reduced separation between adjacent constellation points results in a corresponding decrease in system margin, which limits the maximum signal reach.
Traditionally, encoding schemes and symbol value assignments have been characterized by the minimum Euclidean distance between pairs of symbols. This yields an asymptotic performance as the Signal-to-Noise Ratio (SNR) increases. However, in high speed optical transmission systems, optical modems need to operate at very low SNRs, for example causing symbol error rates of up to 3%. At these high noise levels, the number of adjacent symbols and the mean number of bit errors per symbol error are very important. Having two symbols at the minimum Euclidean distance from a given symbol doubles the symbol error rate. Having two bit errors for each symbol error makes the bit error rate twice the symbol error rate. Soft forward error correction is commonly used to correct bit errors.
For example, consider the case of a natural coded 4-Pulse Amplitude Modulation (4-PAM) code with symbol values of: 00, 01, 10, 11
The inner two symbols, 01 and 10, each have two neighbours, while the outer symbols only have one. Consequently, an error between the neighbouring symbols 01 and 10 would cause two bit errors. It is possible to use Grey coding to avoid this, but this is an illustration chosen for its simplicity. In more complicated encoding formats Grey coding may not be possible.
At high bit rates, such as hundreds of Gigabits per second, soft forward error correction is implemented in custom CMOS ASICs. [U.S. Pat. No. 8,230,294] A good FEC hardware design minimizes the proportion of overhead used in order to obtain a desired noise tolerance, or maximizes the noise tolerance with a given proportion of overhead. For example, a fixed overhead of 20% or of 40% of the data bits can be added in order to carry the redundancy required to implement soft FEC.
Symbol error correction codes, such as Reed-Solomon, avoid the error multiplication issue by correcting erroneous symbols rather than erroneous bits. While some soft symbol error correction codes are known, to date they have not proven to be practical for high speed implementation and an ASIC. Hardware implementations of symbol error correction tend to be limited to only the specific type of modulation that creates the appropriate symbols.
Traditionally, Grey coding has been used with orthogonal codes per dimension, such as 16-QAM. Where possible, the use of Grey coding means that there is only one bit error for the highly more probable symbol errors. However, Grey coding is not possible on many interesting codes, and Grey coding does not mitigate the issue of the number of adjacent symbols having close to the minimum Euclidean distance.
To partially mitigate the error multiplication issue, multi-dimensional constellations of the type known, for example, from co-pending U.S. patent application Ser. No. 13/655,497, filed Oct. 19, 2012, may reduce the minimum Euclidean distance of some pairs of symbols having a lower Hamming distance, in order to increase the Euclidean distance between pairs of symbols having greater Hamming distance.
Sequential decoding, such as with multilevel codes or partition codes known in the art, can avoid issues of multiple adjacent symbols and the mean number of bit errors per symbol error. In such systems, some of the bits of the symbol are detected in a first pass (first-detected bits). These first-detected bits are then made error free by the use of a FEC code that is optimized for the error rate experienced by those bits in the particular modulation scheme used in the optical communications system. Some more of the bits of the symbol are detected in a second pass (second-detected bits), which may use knowledge of the error-free first detected bits. The second-detected bits are then made error free by the use of a FEC code that is optimized for the error rate experienced by those bits in the particular modulation scheme. The error rate of the second-detected bits (prior to FEC) is commonly significantly lower than that of the first detected bits, so a lower proportion of overhead may be used in the FEC applied to the second-detected bits. This process can be continued for a third and a fourth pass as desired. Sequential decoding can achieve very good performance on the modulation format for which it is optimized. However, known high speed hardware implementations of this method will only function with the particular modulation format for which it was designed. Such solutions are therefore not suitable for communications systems in which either or both of the modulation format and the encoding of symbol values may change.
Carrier recovery cycle slips are another mechanism that triggers the start of a stream of high error rate bits (50% or 100% error) until detected and corrected such as by framing. U.S. Pat. No. 8,166,365 teaches a technique for detecting and correcting cycle slips using known or partly known symbols.
Soft In Soft Out (SISO) turbo decoding is known, where an input sample is equalized, a soft value is decoded from a sample (or sequence of samples) with a confidence metric such as log-likelihood, the SISO improves the confidence in the soft value which is used to improve the equalization to get an improved soft value. This cycle is iterated until the desired confidence is achieved.
Partition decoding is known, where two different bits of a symbol are decoded with different expected confidence levels and sent to different FEC algorithms. The distinct FEC algorithms have been adapted to use the different levels of redundancy required to tolerate the different confidence levels.
Nonlinear Polarization Crosstalk Canceller for Dual-Polarization Digital Coherent Receivers, Li et al, OSA/OFC/NFOEC 2010 describes a method for mitigation of the degradation due to cross-polarization modulation. Unfortunately, this method provides no improvement at high noise levels, and indeed degrades the signal.
What is desired is a technique that enables improved high speed decoding in the presence of large amounts of noise.